using System;
using UnityEngine;

namespace Framework
{
    [Serializable]
    public class ColorPalette
    {
        [Header("Theme Color")]
        public Color Theme0 = ColorUtil.Hex("#4A6BFF");             // 主品牌色
        public Color Theme1 = ColorUtil.Hex("#9AA7C1");             // 辅助品牌色
        public Color Theme2 = ColorUtil.Hex("#E6EAFF");             // 三级品牌色
        [Header("Background Color")]
        public Color Background0 = ColorUtil.Hex("#FFFFFF");        // 主背景
        public Color Background1 = ColorUtil.Hex("#F8F9FC");        // 次要背景
        public Color Background2 = ColorUtil.Hex("#EDF1F7");        // 三级背景
        public Color Overlay = ColorUtil.Hex("#00000060");          // 遮罩层
        [Header("Text Color")]
        public Color TextPrimary = ColorUtil.Hex("#1A1F36");        // 主文本
        public Color TextSecondary = ColorUtil.Hex("#4D576B");      // 次要文本
        public Color TextTertiary = ColorUtil.Hex("#6B7280");       // 三级文本
        public Color TextDisabled = ColorUtil.Hex("#A0AEC0");       // 禁用文本
        public Color TextInverse = ColorUtil.Hex("#FFFFFF");        // 反色文本
        [Header("Status Color")]
        public Color Success = ColorUtil.Hex("#47D764");            // 成功状态
        public Color Warning = ColorUtil.Hex("#FFB020");            // 警告状态
        public Color Error = ColorUtil.Hex("#FF5C5C");              // 错误状态
        public Color Info = ColorUtil.Hex("#4299E1");               // 信息状态
        public Color Disabled = ColorUtil.Hex("#E9ECF0");           // 禁用状态
        
        [ButtonFunc(nameof(CalcTheme))]
        public bool _btnCalcTheme;
        public void CalcTheme()
        {
            Debug.Log("Hello World!");
            // Theme1 = Theme0.AdjustHSV(30f / 360f, -0.15f, 0.05f);
            // Theme2 = Theme0.AdjustHSV(-15f / 360f, -0.4f, 0.3f);
        }
    }
}